Database Management Systems (DBMS) provide capabilities for storing and managing data, including the ability to add new data, delete unwanted data and change (or update) existing data. DBMS may follow one of several data models, including hierarchal, network and relational. Relational Database Management Systems (RDBMS) are based on the theory of sets and relations, wherein data is represented in the form of a table. A table is generally understood in the art as a two-dimensional array containing rows and columns. For example, each row may contain data related to an entity and each column may contain attribute data related to that entity.
RDBMS implementations allow for dynamic relationships between entities using the values of the columns. A table may include a primary key or composite primary key used to identify each unique entity in a table. Similarly, in implementations where more than one relational database is being utilized a foreign key may be used to join one or more tables to retrieve data corresponding to an entity.
Accordingly, RDBMS have become one of the most popular DBMS in the data management industry, and RDBMS has captured more than 20% of the DBMS market. RDBMS are often implemented for various applications, ranging from e-commerce to electronic banking RDBMS provide an advantageous combination of affordability, performance, ease of development and sophisticated analytical features, which, collectively, have lead to a high rate of adoption for RDBMS in enterprise systems. Almost all RDBMS implementations (e.g. Oracle) use Structured Query Language (SQL) for data manipulation and retrieval. SQL is the standard language for relational database systems. SQL queries may be submitted to a database by an application, as is commonly understood in the art.